package com.dmgis.hndz.service;

import com.dmgis.hndz.pojo.*;

import org.springframework.web.multipart.MultipartFile;

import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.util.List;

public interface YjfwService {
    /**
     * 模糊查询镇点
     *
     * @param name
     * @return
     * @throws UnsupportedEncodingException
     */
    List<LayerCountryDto> getCountryName(String name) throws UnsupportedEncodingException;

    /**
     * 模糊查询地点
     *
     * @param name
     * @return
     */
    List<EmergencyPoint> listPointByName(String name);

    /**
     * 多边形查询图层信息
     *
     * @param dlfxDto
     * @return
     * @throws UnsupportedEncodingException
     * @throws NoSuchFieldException
     * @throws InstantiationException
     * @throws IllegalAccessException
     */
    List<LayerRcoDto> listLayerByScope(DlfxDto dlfxDto,String xzbm) throws UnsupportedEncodingException, NoSuchFieldException, InstantiationException, IllegalAccessException;

    List<LayerRcoDto> listLayerByScopeList(MultiplePosDlfxDto multiplePosDlfxDto) throws UnsupportedEncodingException, NoSuchFieldException, InstantiationException, IllegalAccessException;

    /**
     * 生成产品
     *
     * @param year
     * @param issueNum
     * @param userName
     * @param phone
     * @param title
     * @param type
     * @param skName
     * @param skData
     * @param ybData
     * @param dlData
     * @param layerName
     * @param images
     * @param date
     * @return
     */
    Object createProduct(Integer year, String issueNum, String userName, String phone, String title, String type, String skName, String skData, String ybData, String dlData, String layerName, MultipartFile[] images, Date date);

    /**
     * 插入实况，预报，地理分析表格数据，插入图片
     * @param resourcePath
     * @param targetPath
     * @param skName
     * @param skData
     * @param ybData
     * @param dlData
     * @param layerName
     * @param images
     */
    Object insertData(String resourcePath,String targetPath,String skName, String skData, String ybData, String dlData, String layerName, MultipartFile[] images);
}
